home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 17 / CU Amiga Magazine's Super CD-ROM 17 (1997)(EMAP Images)(GB)[!][issue 1997-12].iso / CUCD / Programming / DiceSource / src / alib / csup / alib_lib.sfd next >
Text File  |  1995-12-24  |  4KB  |  122 lines

  1. ==id $Id: alib_lib.sfd,v 30.0 1994/06/10 18:09:49 dice Exp $
  2. * "amiga.lib"
  3. * These prototypes are for functions in the amiga.lib link-library.
  4. ==base _None
  5. ==bias 30
  6. ==public
  7. ==include <exec/types.h>
  8. ==include <devices/timer.h>
  9. ==include <devices/keymap.h>
  10. ==include <libraries/commodities.h>
  11. ==include <utility/hooks.h>
  12. ==include <intuition/classes.h>
  13. ==include <intuition/classusr.h>
  14. ==include <graphics/graphint.h>
  15. *
  16. *  Exec support functions
  17. *
  18. VOID BeginIO(struct IORequest *ioReq)                (A0)
  19. struct IORequest *CreateExtIO(struct MsgPort *port, LONG ioSize)(A0,D0)
  20. struct MsgPort *CreatePort(STRPTR name, LONG pri)        (A0,D0)
  21. struct IOStdReq *CreateStdIO(struct MsgPort *port)        (A0)
  22. struct Task *CreateTask(STRPTR name, LONG pri, APTR initPC, ULONG stackSize)    (A0,D0,A1,D1)
  23. VOID DeleteExtIO(struct IORequest *ioReq)            (A0)
  24. VOID DeletePort(struct MsgPort *ioReq)                (A0)
  25. VOID DeleteStdIO(struct IOStdReq *ioReq)            (A0)
  26. VOID DeleteTask(struct Task *task)                (A0)
  27. VOID NewList(struct List *list)                    (A0)
  28.  
  29. APTR LibAllocPooled(APTR poolHeader, ULONG memSize)            (a0,d0)
  30. APTR LibCreatePool(ULONG memFlags, ULONG puddleSize, ULONG threshSize)    (d0,d1,d2)
  31. VOID LibDeletePool(APTR poolHeader)                    (a0)
  32. VOID LibFreePooled(APTR poolHeader, APTR memory, ULONG memSize)        (a0,a1,d0)
  33. *
  34. * Assorted functions in amiga.lib
  35. *
  36. ULONG FastRand(ULONG seed)            (D0)
  37. UWORD RangeRand(ULONG maxValue)            (D0)
  38. *
  39. * Graphics support functions in amiga.lib
  40. *
  41. VOID    AddTOF(struct Isrvstr *i, LONG (*p)(), LONG a)        (A0,A1,D0)
  42. VOID    RemTOF(struct Isrvstr *i)                (A0)
  43. VOID    waitbeam(LONG b)                    (D0)
  44. *
  45. * math support functions in amiga.lib
  46. *
  47. FLOAT    afp(BYTE *string)                    (A0)
  48. VOID    arnd(LONG place, LONG exp, BYTE *string)        (D0,D1,A0)
  49. FLOAT    dbf(UWORD exp, ULONG mant)                (D0,D1)
  50. LONG    fpa(FLOAT fnum, BYTE *string)                (D0,A0)
  51. VOID    fpbcd(FLOAT fnum, BYTE *string)                (D0,A0)
  52. *
  53. * Timer support functions in amiga.lib (V36 and higher only)
  54. *
  55. LONG    TimeDelay(LONG unit, ULONG secs, ULONG microsecs)    (D0,D1,D2)
  56. LONG    DoTimer(struct timeval *, LONG unit, WORD command)    (A0,D0,D1)
  57.  
  58. *
  59. *  Commodities functions in amiga.lib (V36 and higher only)
  60. *
  61. VOID ArgArrayDone()()
  62. UBYTE **ArgArrayInit(LONG argc,UBYTE **argv)(A0,A1)
  63. LONG ArgInt(UBYTE **tt,STRPTR entry,LONG defaultval)(A0,A1,D0)
  64. STRPTR ArgString(UBYTE **tt,STRPTR entry,STRPTR defaulstring)(A0,A1,A2)
  65. CxObj *HotKey(STRPTR description,struct MsgPort *port, LONG id)(A0,A1,D0)
  66. struct InputEvent *InvertString(STRPTR str,struct KeyMap *km)(A0,A1)
  67. VOID FreeIEvents(struct InputEvent *events)(A0)
  68.  
  69. *
  70. * Commodities Macros
  71. *
  72. * CxObj *CxCustom(LONG(*)(),LONG id)(A0,D0)
  73. * CxObj *CxDebug(LONG id)(D0)
  74. * CxObj *CxFilter(STRPTR description)(A0)
  75. * CxObj *CxSender(struct MsgPort *port,LONG id)(A0,D0)
  76. * CxObj *CxSignal(struct Task *task,LONG signal)(A0,D0)
  77. * CxObj *CxTranslate(struct InputEvent *ie)(A0)
  78. *
  79. *  ARexx support functions in amiga.lib
  80. *
  81. BOOL CheckRexxMsg(struct Message *rexxmsg)    (a0)
  82. LONG GetRexxVar(struct Message *rexxmsg,UBYTE *name,UBYTE **result)  (a0,a1,d0)
  83. LONG SetRexxVar(struct Message *rexxmsg,UBYTE *name,UBYTE *value,LONG length) (a0,a1,d0,d1)
  84.  
  85. *
  86. *  Intuition hook and boopsi support functions in amiga.lib.
  87. *  These functions do not require any particular ROM revision
  88. *  to operate correctly, though they deal with concepts first introduced
  89. *  in V36.  These functions would work with compatibly-implemented
  90. *  hooks or objects under V34.
  91. *
  92. ULONG CallHookA( struct Hook *hookPtr, Object *obj, APTR message ) (A0,A2,A1)
  93. ==varargs
  94. ULONG CallHook( struct Hook *hookPtr, Object *obj, ... ) (A0,A2,A1)
  95.  
  96. ULONG DoMethodA( Object *obj, Msg message ) (A2,A1)
  97. ==varargs
  98. ULONG DoMethod( Object *obj, ULONG MethodID, ... ) (A2,A1)
  99.  
  100. ULONG DoSuperMethodA( struct IClass *cl, Object *obj, Msg message ) (A0,A2,A1)
  101. ==varargs
  102. ULONG DoSuperMethod( struct IClass *cl, Object *obj, ULONG MethodID, ... ) (A0,A2,A1)
  103.  
  104. ULONG CoerceMethodA( struct IClass *cl, Object *obj, Msg message ) (A0,A2,A1)
  105. ==varargs
  106. ULONG CoerceMethod( struct IClass *cl, Object *obj, ULONG MethodID, ... ) (A0,A2,A1)
  107.  
  108. ==private
  109. * Note that SetSuperAttrs() does not have a regargs equivalent.
  110. * See amiga_lib.doc for the trivial invocation of the regargs version.
  111. ==public
  112. ==varargs
  113. ULONG SetSuperAttrs( struct IClass *cl, Object *obj, ULONG Tag1, ... ) (A0,A2,A1)
  114. *
  115. *  Network-support functions in amiga.lib.
  116. *  ACrypt() first appeared in later V39 versions of amiga.lib, but
  117. *  operates correctly under V37 and up.
  118. *
  119.  
  120. STRPTR ACrypt( STRPTR buffer, STRPTR password, STRPTR username ) (A0,A1,A2)
  121. ==end
  122.